﻿using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Web;
using System.Web.Mvc;
using Telecom.Data;
using Telecom.Service;
using Telecom.Service.EntityCustom;
using TelecomGis.Helper.Control;

namespace TelecomGis.Controllers
{
    public class TThietbiController : ContronllerBase
    {
        private readonly mangVTSer _mangVTSer = new mangVTSer();
        private readonly thietBiSer _thietBiSer = new thietBiSer();
        private readonly donviToSer _donviToSer = new donviToSer();
        private readonly _LapTBService _LapTBService_ = new _LapTBService();
        private readonly cauhinhTBSer _cauhinhTBSer = new cauhinhTBSer();
        private readonly cardSer _cardSer = new cardSer();
        private readonly PortSer _PortSer = new PortSer();
        private readonly loaiPhaSer _loaiPhaSer = new loaiPhaSer();


        //
        // GET: /TThietbi/

        public string ListLoaiPha(string mvt)
        {

            var _listEntity = _loaiPhaSer.getList(mvt);

            return JsonConvert.SerializeObject(_listEntity, Formatting.Indented,
                              new JsonSerializerSettings
                              {
                                  ReferenceLoopHandling = ReferenceLoopHandling.Ignore
                              });
        }

        public string ListTrangThaiJSOn()
        {

            var _listEntity = _PortSer.getListTT();

            return JsonConvert.SerializeObject(_listEntity, Formatting.Indented,
                              new JsonSerializerSettings
                              {
                                  ReferenceLoopHandling = ReferenceLoopHandling.Ignore
                              });
        }

        [HttpPost]
        public JsonResult ListTrangThai()
        {
            try
            {
                var cities = _PortSer.getListTT();
                return Json(new { Result = "OK", Options = cities });
            }
            catch (Exception ex)
            {
                return Json(new { Result = "ERROR", Message = ex.Message });
            }
        }

        //public string ListTrangThai()
        //{

        //    var _listEntity = _PortSer.getListTT();

        //    return JsonConvert.SerializeObject(_listEntity, Formatting.Indented,
        //                      new JsonSerializerSettings
        //                      {
        //                          ReferenceLoopHandling = ReferenceLoopHandling.Ignore
        //                      });
        //}

        public ActionResult GetLoaiPhaById(int Id)
        {
            var _listEntity = _loaiPhaSer.GetById(Id);
            var jsonResult = Json(_listEntity, JsonRequestBehavior.AllowGet);
            jsonResult.MaxJsonLength = int.MaxValue;
            return jsonResult;
        }

        public ActionResult CheckLapDatTBDaDauNoi(int LapDatTB)
        {
            var _listEntity = _LapTBService_.CheckLapTbDaDauNoi(LapDatTB);
            var jsonResult = Json(_listEntity, JsonRequestBehavior.AllowGet);
            jsonResult.MaxJsonLength = int.MaxValue;
            return jsonResult;
        }


        public ActionResult GetLapDatThietBiById(int LapDatTBId)
        {
            var _listEntity = _LapTBService_.GetById(LapDatTBId);
            var jsonResult = Json(_listEntity, JsonRequestBehavior.AllowGet);
            jsonResult.MaxJsonLength = int.MaxValue;
            return jsonResult;
        }

        public ActionResult Get_Card_ById(int Id)
        {
            var _listEntity = _cardSer.GetById(Id);
            var jsonResult = Json(_listEntity, JsonRequestBehavior.AllowGet);
            jsonResult.MaxJsonLength = int.MaxValue;
            return jsonResult;
        }

        public ActionResult Get_Port_ById(int Id)
        {
            var _listEntity = _PortSer.GetPortById(Id);
            var jsonResult = Json(_listEntity, JsonRequestBehavior.AllowGet);
            jsonResult.MaxJsonLength = int.MaxValue;
            return jsonResult;
        }

        public ActionResult getTrangthaibyId(decimal Id)
        {
            var _listEntity = _PortSer.getTTbyId(Id);
            var jsonResult = Json(_listEntity, JsonRequestBehavior.AllowGet);
            jsonResult.MaxJsonLength = int.MaxValue;
            return jsonResult;
        }

        public string ListCard(int _tbId)
        {
            var _listEntity = _cardSer._getList(_tbId);

            return JsonConvert.SerializeObject(_listEntity, Formatting.Indented,
                              new JsonSerializerSettings
                              {
                                  ReferenceLoopHandling = ReferenceLoopHandling.Ignore
                              });
        }

        public string ListMangVt()
        {
            var _listEntity = _mangVTSer._getList();

            return JsonConvert.SerializeObject(_listEntity, Formatting.Indented,
                              new JsonSerializerSettings
                              {
                                  ReferenceLoopHandling = ReferenceLoopHandling.Ignore
                              });
        }

        public string listJsonIntoCateTree(string tramVt)
        {
            var _listEntity = _donviToSer.getListTreeAllVnptSite(UtContextgis._UserPageContext.DonViByUser, UtContextgis._UserPageContext.ToKtByuser,tramVt);

            return JsonConvert.SerializeObject(_listEntity, Formatting.Indented,
                              new JsonSerializerSettings
                              {
                                  ReferenceLoopHandling = ReferenceLoopHandling.Ignore
                              });
        }

        public string listDVTOByTramFromDauNoi()
        {
            var _listEntity = _donviToSer.listDVTOByTramFromDauNoi(UtContextgis._UserPageContext.DonViByUser, UtContextgis._UserPageContext.ToKtByuser);

            return JsonConvert.SerializeObject(_listEntity, Formatting.Indented,
                              new JsonSerializerSettings
                              {
                                  ReferenceLoopHandling = ReferenceLoopHandling.Ignore
                              });
        }
        

        public ActionResult Thietbi()
        {

            try
            {
                ViewBag.FirstMVT = _mangVTSer._getList().First().MA;
            }
            catch (Exception e)
            {
                ViewBag.FirstMVT = "";
            }
            return PartialView();
        }

        public ActionResult ListPortByCauHinh(int cauhinh)
        {
            var _listEntity = _PortSer.getList(cauhinh);
            return Json(new { Result = "OK", Records = _listEntity, TotalRecordCount = _listEntity.Count() }, JsonRequestBehavior.AllowGet);
        }

        public ActionResult ListPortByCauHinhJson(int cauhinh)
        {
            var _listEntity = _PortSer.getListProcess(cauhinh);
            var jsonResult = Json(_listEntity, JsonRequestBehavior.AllowGet);
            jsonResult.MaxJsonLength = int.MaxValue;
            return jsonResult;
        }

        public ActionResult ListPortByCauHinhJson_lap_dat(int cauhinh)
        {
            var _listEntity = _PortSer.getListProcess_dau_noi(cauhinh);
            var jsonResult = Json(_listEntity, JsonRequestBehavior.AllowGet);
            jsonResult.MaxJsonLength = int.MaxValue;
            return jsonResult;
        }

        public ActionResult ListLapDatTB(string donvi, string toql, string SiteId, string type, string mangvt)
        {
            var _listEntity = new ListObjectToJtable<LAP_THIETBI>();

            if (type == "all")
            {
                _listEntity = new ListObjectToJtable<LAP_THIETBI>();  //_LapTBService_.getList(UtContextgis._UserPageContext.ToKtByuser, UtContextgis._UserPageContext.DonViByUser, null, mangvt);
                
            }
            else
            {
                switch (type)
                {
                    case "dv":

                        List<string> myDonvi = new List<string>();
                        myDonvi.Add(donvi);
                        _listEntity = _LapTBService_.getList(UtContextgis._UserPageContext.ToKtByuser, myDonvi.ToArray(), null, mangvt);


                        break;
                    case "toql":

                        List<string> mytoql = new List<string>();
                        mytoql.Add(toql);
                        _listEntity = _LapTBService_.getList(mytoql.ToArray(), null, null, mangvt);

                        break;
                    default :
                        List<int> siteVNPT = new List<int>();
                        siteVNPT.Add(int.Parse(SiteId));
                        _listEntity = _LapTBService_.getList(UtContextgis._UserPageContext.ToKtByuser, UtContextgis._UserPageContext.DonViByUser, siteVNPT.ToArray(), mangvt);
                        break;

                }
            }

            return Json(new { Result = "OK", Records = _listEntity.list, TotalRecordCount = _listEntity.count }, JsonRequestBehavior.AllowGet);

        }

        public ActionResult _openWinDowLapDatTB(string donviqy, string _toql, string siteId, string mangvt)
        {
            LAP_THIETBI model = new LAP_THIETBI();
            if (!string.IsNullOrEmpty(siteId))
            {
                model.SITEID = int.Parse(siteId) ;
            }

            model.DONVIQL = donviqy;
            model.TOQL = _toql;
            model.DAULUONG = 0;
            model.LOAIPHA = 0;
            model.NGAYLAP = DateTime.Now;
            model.DMTHIETBI = 0;

            ViewBag.DateNow = DateTime.Now.Day + "/" + DateTime.Now.Month + "/" + DateTime.Now.Year;
            ViewBag.MangVTADDLTB = mangvt;

            return PartialView(model);
        }

        [HttpPost]
        [ValidateInput(false)]
        public ActionResult _openWinDowLapDatTB(LAP_THIETBI model)
        {
            if (string.IsNullOrEmpty(model.DONVIQL))
            {
                return JsonError("Vui lòng chọn đơn vị quản lý");
            }

            if (string.IsNullOrEmpty(model.TOQL))
            {
                return JsonError("Vui lòng chọn tổ quản lý");
            }

            if (model.DMTHIETBI == 0)
            {
                return JsonError("Vui lòng chọn danh mục thiết bị");
            }


            if (model.SITEID == 0)
            {
                return JsonError("Vui lòng chọn site cho thiết bị ");
            }

            if (string.IsNullOrEmpty(model.MA))
            {
                return JsonError("Vui lòng nhập mã lắp đặt");
            }

            if (string.IsNullOrEmpty(model.TEN))
            {
                return JsonError("Vui lòng nhập tên lắp đặt");
            }


            if (model.LOAIPHA == 0)
            {
                return JsonError("Vui lòng chọn loại pha cho lắp thiết bị");
            }

            model.MA = model.MA.ToUpper();
            _LapTBService_.addorUpdate(model);

            var _enttiyMa = _LapTBService_.GetByIdMa(model.MA.ToUpper());

            if (model.ID == 0)
            {

                
                var _entityCard = _cardSer._getList(model.DMTHIETBI.Value).First();

                CAUHINH_TBI _cauhinhTb = new CAUHINH_TBI();
                _cauhinhTb.ID = 0;
                _cauhinhTb.DAULUONG = 0;
                _cauhinhTb.SLOT = 1;
                _cauhinhTb.CARD = _entityCard.ID;
                _cauhinhTb.TEN = _entityCard.TEN + "/1";
                _cauhinhTb.THIETBIID = _enttiyMa.ID;
                _cauhinhTBSer.addorUpdate(_cauhinhTb);
            }


            var requestPortDAUNOIUpdate = Request["ChoosePortvalue_pgaelapdat"];
            var requestTBDAUNOIUpdate = Request["ChooseTBDauVaovalue_pgaelapdat"];
            var requestCARDDAUNOIUpdate = Request["ChooseCardauVaovalue_pgaelapdat"];

            if (!string.IsNullOrEmpty(requestPortDAUNOIUpdate) && !string.IsNullOrEmpty(requestTBDAUNOIUpdate) && !string.IsNullOrEmpty(requestCARDDAUNOIUpdate))
            {
                Thread.Sleep(300);
                // cập nhật đấu nối TB
                var _encauhinhTB = _cauhinhTBSer.GetListByLapTbbiet(_enttiyMa.ID).Select(p => p.ID).ToArray();
                var ListPortTB = _PortSer.getListCauHinhArray(_encauhinhTB);

                var itenPortEntity = _PortSer.GetPortById(int.Parse(requestPortDAUNOIUpdate));

                // cập nhật port
                foreach (var itemPort in ListPortTB)
                {
                    itemPort.TB_IN = int.Parse(requestTBDAUNOIUpdate);
                    _PortSer.addorUpdate(itemPort);
                }

                itenPortEntity.TB_OUT = _enttiyMa.ID;
                itenPortEntity.TRANGTHAI = 2;
                _PortSer.addorUpdate(itenPortEntity);
                
            }

            return JsonSuccess("");
        }

        [HttpPost]
        [ValidateInput(false)]
        public ActionResult _openWinDowLapDatTBUpdate(LAP_THIETBI model)
        {
            if (string.IsNullOrEmpty(model.DONVIQL))
            {
                return JsonError("Vui lòng chọn đơn vị quản lý");
            }

            if (string.IsNullOrEmpty(model.TOQL))
            {
                return JsonError("Vui lòng chọn tổ quản lý");
            }

            if (model.DMTHIETBI == 0)
            {
                return JsonError("Vui lòng chọn danh mục thiết bị");
            }


            if (model.SITEID == 0)
            {
                return JsonError("Vui lòng chọn site cho thiết bị ");
            }

            if (string.IsNullOrEmpty(model.MA))
            {
                return JsonError("Vui lòng nhập mã lắp đặt");
            }

            if (string.IsNullOrEmpty(model.TEN))
            {
                return JsonError("Vui lòng nhập tên lắp đặt");
            }


            if (model.LOAIPHA == 0)
            {
                return JsonError("Vui lòng chọn loại pha cho lắp thiết bị");
            }
            

            model.MA = model.MA.ToUpper();
            _LapTBService_.addorUpdate(model);

            var _enttiyMa = _LapTBService_.GetByIdMa(model.MA.ToUpper());

            if (model.ID == 0)
            {


                var _entityCard = _cardSer._getList(model.DMTHIETBI.Value).First();

                CAUHINH_TBI _cauhinhTb = new CAUHINH_TBI();
                _cauhinhTb.ID = 0;
                _cauhinhTb.DAULUONG = 0;
                _cauhinhTb.SLOT = 1;
                _cauhinhTb.CARD = _entityCard.ID;
                _cauhinhTb.TEN = _entityCard.TEN + "/1";
                _cauhinhTb.THIETBIID = _enttiyMa.ID;
                _cauhinhTBSer.addorUpdate(_cauhinhTb);
            }

            return JsonSuccess("");
        }

        public ActionResult _openWinDowUpdateLapDatTB(int Id, string mangvt)
        {
            LAP_THIETBI model = new LAP_THIETBI();
            model = _LapTBService_.GetById(Id);
            model.LOAIPHA = model.LOAIPHA == null ? 0 : model.LOAIPHA;
            model.DAULUONG = model.DAULUONG == null ? 1 : model.DAULUONG;
            ViewBag.MangVTUPLTB = mangvt;
            return PartialView(model);
        }

        //[HttpPost]
        public JsonResult DeleteLTB(int ID)
        {
            try
            {
                Thread.Sleep(50);
                _LapTBService_.Detele(ID);
                return Json(new { Result = "OK" });
            }
            catch (Exception ex)
            {
                return Json(new { Result = "ERROR", Message = ex.Message }, JsonRequestBehavior.AllowGet);
            }
        }

        public ActionResult ListCauHinhTB(int lapTBId)
        {
            var _listEntity = _cauhinhTBSer.getList(lapTBId);
            return Json(new { Result = "OK", Records = _listEntity.list, TotalRecordCount = _listEntity.count }, JsonRequestBehavior.AllowGet);
        }

        public ActionResult ListCauHinhTBJSon(int? lapTBId)
        {
            var _listEntity = _cauhinhTBSer.getList(lapTBId);
            var jsonResult = Json(_listEntity.list, JsonRequestBehavior.AllowGet);
            jsonResult.MaxJsonLength = int.MaxValue;
            return jsonResult;
        }

        public ActionResult FindFistCauHinhTBJSon(int lapTBId)
        {
            var _listEntity = _cauhinhTBSer.GetListByLapTbbiet(lapTBId).First();
            var jsonResult = Json(_listEntity, JsonRequestBehavior.AllowGet);
            jsonResult.MaxJsonLength = int.MaxValue;
            return jsonResult;
        }


        //[HttpPost]
        public JsonResult DeleteCauHinhTB(int ID)
        {
            try
            {
                Thread.Sleep(50);
                _cauhinhTBSer.Detele(ID);
                return Json(new { Result = "OK" });
            }
            catch (Exception ex)
            {
                return Json(new { Result = "ERROR", Message = ex.Message }, JsonRequestBehavior.AllowGet);
            }
        }

        public ActionResult AddCauHinhTb(int lapDatTBid, int dmTb,  string name)
        {

            CAUHINH_TBI model = new CAUHINH_TBI();
            model.SLOT = _cauhinhTBSer.getFlotMax(lapDatTBid) + 1; ;
            model.DAULUONG = 0;
            try
            {
                var entityCardFirst = _cardSer._getList(dmTb).First();
                model.CARD = entityCardFirst.ID;
                model.TEN = entityCardFirst.TEN + "/" + model.SLOT;

            }
            catch (Exception e) { model.CARD = 0; }
            model.ID = 0;
            model.THIETBIID = lapDatTBid;

            ViewBag.NameLapTB = name;
            ViewBag.IDDMTB = dmTb;

            return PartialView("_AddCauHinhTb",model);
        }

        public ActionResult UpdateCauHinhTb(int chId, int dmTb, string name)
        {
            CAUHINH_TBI model = new CAUHINH_TBI();
            model = _cauhinhTBSer.GetById(chId);

            ViewBag.NameLapTB = name;
            ViewBag.IDDMTB = dmTb;

            return PartialView("_AddCauHinhTb", model);
        }

        [HttpPost]
        [ValidateInput(false)]
        public ActionResult AddCauHinhTb(CAUHINH_TBI model)
        {
            if (string.IsNullOrEmpty(model.TEN))
            {
                return JsonError("Vui lòng nhập tên cấu hình Tb");
            }

            if (model.SLOT == 0)
            {
                return JsonError("Vui lòng nhập số Slot cấu hình Tb");
            }

            if (model.CARD == 0)
            {
                return JsonError("Vui lòng chọn card cho cấu hình Tb");
            }

            //if (model.DAULUONG == 0)
            //{
            //    return JsonError("Vui lòng nhập số slot cấu hình Tb");
            //}

            _cauhinhTBSer.addorUpdate(model);

            return JsonSuccess("");

        }

        public ActionResult DauNoiTB(int LapTbId, string tramvt)
        {
            var _entity = _LapTBService_.GetById(LapTbId);

            ViewBag.TRAMVT_DNTB = tramvt;

            return PartialView("_DauNoiTB", _entity);
        }

        public ActionResult DauNoiTB_On_LapDat(string toql, string tramvt)
        {
            ViewBag.TRAMVT_DNTB_LAPTB = tramvt;
            ViewBag.ToqlDauNoiTB = toql;

            return PartialView("_DauNoiTB_On_LapDat");
        }

        [HttpPost]
        public ActionResult DauNoiTB(LAP_THIETBI model)
        {
            var requestTB = Request["ChooseTBDauVaovalue"];
            if (string.IsNullOrEmpty(requestTB))
            {
                return JsonError("Vui lòng chọn thiết bị để đấu vào");
            }

            var requestCard = Request["ChooseCardauVaovalue"];
            if (string.IsNullOrEmpty(requestCard))
            {
                return JsonError("Vui lòng chọn card đấu vào");
            }

            var requestPort = Request["ChoosePortvalue"];
            if (string.IsNullOrEmpty(requestPort))
            {
                return JsonError("Vui lòng chọn Port đấu vào");
            }

            var _encauhinhTB = _cauhinhTBSer.GetListByLapTbbiet(model.ID).Select(p => p.ID).ToArray();
            var ListPortTB = _PortSer.getListCauHinhArray(_encauhinhTB);


            var itenPortEntity = _PortSer.GetPortById(int.Parse(requestPort));

            // cập nhật port
            foreach (var itemPort in ListPortTB)
            {
                itemPort.TB_IN = itenPortEntity.THIETBIID;
                _PortSer.addorUpdate(itemPort);
            }

            itenPortEntity.TB_OUT = model.ID;
            itenPortEntity.TRANGTHAI = 2;
            _PortSer.addorUpdate(itenPortEntity);

            return JsonSuccess("");

        }


        [HttpPost]
        public ActionResult DauNoiTB_LAPTb(LAP_THIETBI model)
        {
            var requestTB = Request["ChooseTBDauVaovalue"];
            if (string.IsNullOrEmpty(requestTB))
            {
                return JsonError("Vui lòng chọn thiết bị để đấu vào");
            }

            var requestCard = Request["ChooseCardauVaovalue"];
            if (string.IsNullOrEmpty(requestCard))
            {
                return JsonError("Vui lòng chọn card đấu vào");
            }

            var requestPort = Request["ChoosePortvalue"];
            if (string.IsNullOrEmpty(requestPort))
            {
                return JsonError("Vui lòng chọn Port đấu vào");
            }

            return JsonSuccess("");
        }

        public ActionResult CapNhatDauNoiTB(int LapTbId, string tramvt)
        {
            var _entity = _LapTBService_.GetById(LapTbId);

            ViewBag.TRAMVT_DNTB = tramvt;


            ViewBag.TBDUOCDAUNOI = _LapTBService_.FindTBInOfTb_On_LapTB(LapTbId);
            ViewBag.FINDCARĐAUNOI = _LapTBService_.FindCardDauNoiForLapTB(LapTbId);
            ViewBag.FINDPORTDAUNOI = _LapTBService_.FindPortDauNoiForLapTB(LapTbId);

            return PartialView("_CapNhatDauNoiTB", _entity);
        }

        [HttpPost]
        public ActionResult CapNhatDauNoiTB(LAP_THIETBI model)
        {
            var requestTB = Request["ChooseTBDauVaovalue"];
            if (string.IsNullOrEmpty(requestTB))
            {
                return JsonError("Vui lòng chọn thiết bị để đấu vào");
            }

            var requestCard = Request["ChooseCardauVaovalue"];
            if (string.IsNullOrEmpty(requestCard))
            {
                return JsonError("Vui lòng chọn card đấu vào");
            }

            var requestPort = Request["ChoosePortvalue"];
            if (string.IsNullOrEmpty(requestPort))
            {
                return JsonError("Vui lòng chọn Port đấu vào");
            }

            var _encauhinhTB = _cauhinhTBSer.GetListByLapTbbiet(model.ID).Select(p => p.ID).ToArray();
            var ListPortTB = _PortSer.getListCauHinhArray(_encauhinhTB);


            var itenPortEntity = _PortSer.GetPortById(int.Parse(requestPort));

            var requestTb_Old = Request["ChooseTBDauVaovalue_Old"];
            if (requestTb_Old != requestTB)
            {
                // cập nhật port
                foreach (var itemPort in ListPortTB)
                {
                    itemPort.TB_IN = itenPortEntity.THIETBIID;
                    _PortSer.addorUpdate(itemPort);
                }
            }

            var requestPort_Old = Request["ChoosePortvalue_Old"];
            if (requestPort != requestPort_Old)
            {
                // set port cũ ko sử dụng
                var itenPortEntity_portOld = _PortSer.GetPortById(int.Parse(requestPort_Old));
                itenPortEntity_portOld.TB_OUT = null;
                itenPortEntity_portOld.TRANGTHAI = 1;
                _PortSer.addorUpdate(itenPortEntity_portOld);

                itenPortEntity.TB_OUT = model.ID;
                itenPortEntity.TRANGTHAI = 2;
                _PortSer.addorUpdate(itenPortEntity);

            }

            return JsonSuccess("");

        }


        public ActionResult List_Cau_Hinh_Tb_Dau_Noi(int Id, string toql, string tramvt)
        {
            var _listEntity = _LapTBService_.GetListByToQLMangvtDN(toql, tramvt, Id);
            var jsonResult = Json(_listEntity, JsonRequestBehavior.AllowGet);
            jsonResult.MaxJsonLength = int.MaxValue;
            return jsonResult;
        }

        public ActionResult ViewGianDoOnThietBiDauNoi(int id)
        {
            var _entity = _LapTBService_.GetById(id);
            return PartialView("_ViewGianDoOnThietBiDauNoi", _entity);
        }

        public string LoadJsonGianDoOnThietBiDauNoi(int id)
        {
            var _entity = _LapTBService_.GetById(id);
            //return PartialView("_ViewGianDoOnThietBiDauNoi", _entity);
            
            var _listEntity = _thietBiSer.viewGianDoByLapTb(id);

            return JsonConvert.SerializeObject(_listEntity, Formatting.Indented,
                              new JsonSerializerSettings
                              {
                                  ReferenceLoopHandling = ReferenceLoopHandling.Ignore
                              });


        }

        [HttpPost]
        public JsonResult UpdatePortCauHinh(PORT _port)
        {
            try
            {
                var entity = _PortSer.getPortById(_port.ID);
                entity.TRANGTHAI = _port.TRANGTHAI;
                _PortSer.addorUpdate(entity);

                return Json(new { Result = "OK" });
            }
            catch (Exception ex)
            {
                return Json(new { Result = "ERROR", Message = ex.Message });
            }
        }

        public ActionResult CheckDeteleLapTb(int LaptbId)
        {
            var _listEntity = _thietBiSer.checkDeleteLapTb(LaptbId);
            var jsonResult = Json(_listEntity, JsonRequestBehavior.AllowGet);
            jsonResult.MaxJsonLength = int.MaxValue;
            return jsonResult;

        }

        public ActionResult checkXoaCauHinhTb(int cauhinhId)
        {
            var _listEntity = _thietBiSer.checkXoaCauHinhTb(cauhinhId);
            var jsonResult = Json(_listEntity, JsonRequestBehavior.AllowGet);
            jsonResult.MaxJsonLength = int.MaxValue;
            return jsonResult;

        }

    }
}
